package com.excesys.exsecs.energy.service;

import cn.hutool.json.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.IService;
import com.excesys.exsecs.energy.entity.DevKeqMap;
import org.apache.ibatis.annotations.Param;

import java.text.ParseException;
import java.util.List;
import java.util.Map;

public interface DevKeqMapService extends IService<DevKeqMap> {
	//重点设备能耗 - 统计能耗用电量
	JSONObject powerKeqData(String id, String startDate, String endDate, String compareType) throws ParseException;

	//重点设备能耗 - 能耗图层
	JSONObject powerKeqLayer(String id, String startDate, String endDate,String compareType) throws ParseException;

	//重点设备能耗 - 桑基图统计
	List<Map<String, Object>> powerKeqLinks(String startTime, String endTime, List<String> idsList);

	//能耗报表 - 日
	List<Map<String, Object>> dayReport(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("idList") List<String> idList);
	//能耗报表 - 日 - 电区间
	List<Map<String, Object>> daySectionReport(String startTime, String endTime, List<String> idList);
	//能耗报表 - 月
	List<Map<String, Object>> monthReport(@Param("startTime") String date, @Param("idList") List<String> idList);
	//能耗报表 - 月 - 区间
	List<Map<String, Object>> monthSectionReport(String startTime, String endTime, List<String> idList);
	//能耗报表 - 年
	List<Map<String, Object>> yearReport(@Param("startTime") String date, @Param("idList") List<String> idList);
	//能耗报表 - 年 - 区间
	List<Map<String, Object>> yearSectionReport(String startTime, String endTime, List<String> idList);
	//能耗排名
	List<Map<String, Object>> devSortRank(String startTime, String endTime, List<String> idList);

	JSONArray powerCostData(String id, String startDate, String endDate) throws ParseException;

	JSONObject powerCostBingtu(String id, String startDate, String endDate) throws ParseException;

}